how to develop chat system